/*Arquivo responsável por controlar todas as chamadas de click dos elementos
 * html do OpenLayers. Interação com interface gráfica*/
var heatmapIsCreated = false;
var clusterIsCreated = false;
/*Função carregada ao iniciar a pagina*/
$(document).ready(function() {
    /*Escode a visibilidade do menu openLayers*/
    $("#menu_opl").hide(1);
    /*Escode o painel grafico do controle de navegação*/
    $("#historyControl").hide(1);
    /*Pega o evento de click no elemento de logo do openLayers*/
    $("#logo_opl").click(function() {
        /*Variavel que define a origem, 1 = Esri, 2 = openLayers*/
        var origem = 2;
        /*Verifica o estado do menu passando @origem como parametro*/
        verificarEstadoMenu(origem);
        /*Esconde o mapa da esri*/
        $("#map_esri").hide();
        /*Mostra o mapa do openlayers*/
        $("#map").show();
    });
    /*Vincula evento de click a funcionalidade alterar layers*/
    $("#btn_altMapBaseOpl").click(function() {
      $("#OpenLayers_Control_LayerSwitcher_3").toggle();
    });
    /*Vincula evento de click a funcionalidade overView*/
    $("#btn_overViewOpl").click(function() {
        $("#OpenLayers_Control_OverviewMap_4").toggle();
    });
      /*Vincula evento de click a funcionalidade Barra de Escala*/
      $("#btn_scaleBarOpl").click(function() {
        /*Variável que contem o valor do atributo value do elemento*/
        var nomeControle = $("#btn_scaleBarOpl").attr("value");
        /*Função que desativa todos os controles*/
        desativeAllCtrs();
        /*Função para remover legenda da camada*/
        removeMapLegend();
        /*Função para controlar alternancia do controle*/
        alternarControleNativo(nomeControle);
    });
    /*Vincula evento de click a funcionalidade carregar camada*/
    $("#btn_carregarCmdOpl").click(function() {
        /*Faz o controle de visibilidade da camada*/
        console.info("evento on");
        toggleLayerOpl(layerRegiao);
    });
    /*Vincula evento de click a funcionalidade informação de camada*/
    $("#btn_infoCmdOpl").click(function() {
        /*Função que desativa todos os controles*/
        desativeAllCtrs();
        /*Adiciona controle de informação*/
        addInfoControl();
    });
    
    /*Vincula evento de click a funcionalidade de legenda*/
    $("#btn_legendaOpl").click(function() {
        /*Função que adiciona legenda*/
        addMapLegend();
        $("#divLegenda").toggle();
    });
      /*Vincula evento de click a funcionalidade de zoom em area*/
      $("#btn_zoomAreaOpl").click(function() {
          /*Função que desativa todos os controles*/
          desativeAllCtrs();
          /*Função para remover legenda da camada*/
          removeMapLegend();
          /*Ativa controle de zoom em area*/
          navigationControls.zoomBox.activate();
    });
    /*Vincula evento de click a funcionalidade de geolocalização*/
    $("#btn_geolocation").click(function() {
        /*Função que desativa todos os controles*/
        desativeAllCtrs();
        /*Função para remover legenda da camada*/
        removeMapLegend();
        /*Função que cria e adiciona o controle ao mapa*/
        geolocation();
        /*Função que controla a alternancia do @geolocation()*/
        toogleGeolocation();
    });
    /*Vincula evento de click a funcionalidade desenho de Linha*/
     $("#btn_drawLineOpl").click(function() {
        /*Função que controla os desenhos do mapa*/
        toggleDrawFeature(this);
    });
       /*Vincula evento de click a funcionalidade desenho de Poligano*/
       $("#btn_drawPoliOpl").click(function() {
        /*Função que controla os desenhos do mapa*/
        toggleDrawFeature(this);
    });
    /*Vincula evento de click a funcionalidade desenho de Caixa*/
    $("#btn_drawBoxOpl").click(function() {
        /*Função que controla os desenhos do mapa*/
        toggleDrawFeature(this);
    });
    /*Vincula evento de click a funcionalidade desenho de Ponto*/
    $("#btn_drawPointOpl").click(function() {
        /*Função que controla os desenhos do mapa*/
        toggleDrawFeature(this);
    });
    /*Vincula evento de click a funcionalidade mensuração de Distancia*/
    $("#btn_measureDistOpl").click(function() {
       
        /*Função que controla mensuração do mapa*/
        toggleMeasureControl(this);
        
        
    });
    /*Vincula evento de click a funcionalidade mensuração de Área*/
    $("#btn_measureAreaOpl").click(function() {
        
        /*Função que controla mensuração do mapa*/
        toggleMeasureControl(this);
    });

    $("#btn_poc2Opl").click(function() {
        $("#historyControl").show();
    });
    /*Vincula evento de click ao Botao POC-01*/
    $("#btn_poc1Opl").click(function() {
        /*Esconde o controle de historico de navegação*/
        $("#historyControl").hide();
    });
    /*Vincula evento de click a funcionalidade de Camada de cluster*/
    $("#btn_cmdClusterOpl").click(function() {
        if (!clusterIsCreated) {
            /*Função para crialçao de cluster*/
            createClusterMapOpenLayers();
            clusterIsCreated = true;
        }
        /*Função que controla a visiblidade da camada*/
        toogleCluster();
    });
    /*Vincula evento de click a funcionalidade de Camada de HeatMap*/
    $("#btn_cmdHeatMapOpl").click(function() {
        if (!heatmapIsCreated) {
            /*Função para crialçao de heatmap*/
            createHeatMapOpenLayers();
            heatmapIsCreated = true;
        }
        /*Função que controla a visiblidade da camada*/
        toogleHeatMap();
    });
});